package ch.exm.storm.loader;

public interface ObjectLoadListener {

	/**
	 * This listener it's notified when a new object is loaded from the persistence layer
	 * If this listener already processed the same object in a former notification it ignores
	 * this notification and returns the formerly processed object otherwise returns null
	 * @param clazz - The actual class (unproxied) of the loaded object
	 * @param id - The id of the newly loaded object
	 * @param object - The newly loaded object
	 */
	Object onObjectLoaded(Class<?> clazz, Object id, Object object);
}
